package org.bronycorps.mlptss.manager.ai.playerimpl;

import org.bronycorps.mlptss.domain.actor.AbstractActor;
import org.bronycorps.mlptss.domain.controller.AbstractController;
import org.bronycorps.mlptss.domain.controller.EnemyController;
import org.bronycorps.mlptss.domain.model.AbstractActorModel;
import org.bronycorps.mlptss.utils.DrawableAnimation;

import com.badlogic.gdx.math.Vector2;

public class DummyEnemyActor extends AbstractActor {

	private EnemyController enemyController;

	public DummyEnemyActor(EnemyController enemyController) {
		super();
		this.enemyController = enemyController;

		setPosition(getModelPosition().x, getModelPosition().y);
	}

	@Override
	public void act(float delta) {
		super.act(delta);
	}

	@Override
	protected AbstractController getController() {
		return this.enemyController;
	}

	private DrawableAnimation getDefaultAnimation() {
		return this.enemyController.getModel().getDefaultAnimation();
	}

	public EnemyController getEnemyController() {
		return this.enemyController;
	}

	@Override
	public AbstractActorModel getModel() {
		return this.enemyController.getModel();
	}

	@Override
	protected Vector2 getModelPosition() {
		return this.enemyController.getModel().getPosition();
	}

	public void updatePosition() {
		setPosition(getModelPosition().x, getModelPosition().y);
	}

}
